// pages/login/login.js
import { createStoreBindings } from "mobx-miniprogram-bindings";
import store from "../../store/index";
import { login,sms } from "../../api/login";
Page({

  /**
   * 页面的初始数据
   */
  data: {
    mobile:null,
    code:null,
    time:60,
    timer:null,
    err1:false,
    err_msg1:null,
    err2:false,
    err_msg2:null,
    list:[]
  },
  // 手机号校验
  setmobile(e){
  this.setData({
    'mobile':e.detail.value
  })
    const jysjh = /^(?:(?:\+|00)86)?1[3-9]\d{9}$/
    const err =jysjh.test(e.detail.value)
    if(!err){
      this.setData({
       "err1":true,
       "err_msg1":'请输入手机号'
      })
    }else{
      this.setData({
        "err1":false,
         "err_msg1":''
       })
    }
  },
  //验证码
  setCode(e){
    this.setData({
      'code':e.detail.value
    })
    const jysjh = /^\d+$/
    const err =jysjh.test(e.detail.value)
    if(!err){
      this.setData({
       "err2":true,
       "err_msg2":'请输入验证码'
      })
    }else{
      this.setData({
        "err2":false,
         "err_msg2":''
       })
    }
  },

  //发送验证码
  async onyzm(){
    try {
     const res= await sms(this.data.mobile)
    console.log(res)
    //倒计时
   this.data.timer = setInterval(() => {
     if(this.data.time < 1){
       clearInterval(this.data.timer)
       this.setData({
           timer:null,
            time:60
       })
       return
     }
     this.setData({time:this.data.time -1})
    },1000);
    wx.showToast({
     title: '发送成功',
    });
     
    } catch (error) {
      this.setData({
        "err1":true,
        "err_msg1":'请输入手机号'
       })
    }
 
   },
  //  登录
  async onlogin(){
    
    try {
      const res = await login({
        mobile: this.data.mobile,
         code:this.data.code
       })
      //  存储token
      this.setToken(res.data.token)
       wx.setStorageSync('token', res.data.token) 
       console.log(res);
       wx.showToast({
        title: '登录成功',
        icon: 'success',
       });
    } catch (error) {
      console.log(error);
      wx.showToast({
        title: '登录失败',
        icon: 'error',
       });
    }
    wx.switchTab({
      url: '/pages/contact/contact',
      success: (result)=>{
        
      },
      fail: ()=>{},
      complete: ()=>{}
    });
  },
  /**
   * 生命周期函数--监听页面加载
   */
  onLoad(options) {
    createStoreBindings(this,{
      store:store,
      fields:['token'],
      actions:['setToken']
    })
  
  this.setData({
    list:wx.getStorageSync()
  })
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady() {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow() {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide() {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload() {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh() {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom() {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage() {

  }
})